package io.adrainty.bolee.insurance.models.aggregate;

import io.adrainty.bolee.insurance.models.entity.InsuranceCoefficientEntity;
import io.adrainty.bolee.insurance.models.entity.InsuranceEntity;
import io.adrainty.bolee.insurance.models.entity.InsurancePlanEntity;
import io.adrainty.bolee.insurance.models.entity.PlanSafeguardEntity;
import io.adrainty.bolee.security.models.entity.CompanyEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @author AdRainty
 * @version V1.0.0
 * @since 2025/8/24 下午11:28
 */

@Data
@Builder
@Schema(description = "投保、试算处理对象")
@NoArgsConstructor
@AllArgsConstructor
public class InsuranceProcessDTO {

    @Schema(description = "保险产品")
    private InsuranceEntity insuranceEntity;

    @Schema(description = "保险方案")
    private InsurancePlanEntity insurancePlanEntity;

    @Schema(description = "保险公司")
    private CompanyEntity companyEntity;

    @Schema(description = "保险方案保障项")
    private List<PlanSafeguardEntity> planSafeguardList;

    @Schema(description = "保险系数项")
    private List<InsuranceCoefficientEntity> insuranceCoefficientList;

}
